﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace IRM.Messaging.Repository
{
    public interface IDataContext : IDisposable
    {
        void Attach<T>(T entity, T original)
            where T : class;
        void Insert<T>(T entity)
            where T : class;
        void Remove<T>(T entity)
            where T : class;
        void SubmitChanges();
    }

    public interface IMessagesDataContext : IDataContext
    {
        IQueryable<Message> Messages { get; }
        void SaveStatus(Message message);
    }
}
